home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / ab20 / unarced / utilities / shells / sksh / init / stuff.sksh < prev   
Text File  |  1995-03-17  |  3KB  |  128 lines

  1.  
  2. #*************************************************************************
  3. # This file contains functions and aliases which can be cut out and put
  4. # in your .skshrc file.  They are not included there by default, since
  5. # many people will not want them, or will want modified versions.
  6. # These commands should operate with SKsh version 1.7 or later.
  7. # They are also simple skeletons which can be expanded to add features.
  8. #
  9. # Also, please note that these commands have not been tested extensively.
  10. #*************************************************************************
  11.  
  12.  
  13. #*************************************************************************
  14. # This alias will remove emacs backup files by using the "qrm" function
  15. # defined above.  It could be extended to remove ".o" files, or anything
  16. # else.
  17. #*************************************************************************
  18.  
  19. alias clean='qrm *~'
  20.  
  21. #*************************************************************************
  22. # Ths function insert all files in the current directory except .o
  23. # files into the current complist.  It also inserts the contents of the
  24. # COMPLIST variable.
  25. #*************************************************************************
  26.  
  27. function cget {
  28.    complist -e
  29.    complist -a !*.o
  30.    complist -a $COMPLIST
  31. }
  32.  
  33. #*************************************************************************
  34. # Aliases and functions to make zoo files a bit easier to manipulate.
  35. # The "zmore" function
  36. #*************************************************************************
  37.  
  38. alias zp='zoo -print'
  39. alias zl='zoo -list'
  40. alias zx='zoo -extract'
  41. alias za='zoo -add'
  42.  
  43. function zmore {
  44.  
  45.   local zoofile tmpfile
  46.  
  47.   if [ $# -lt 2 ]
  48.   then
  49.      echo "Usage: $0 zoofile file1..."
  50.      return;
  51.   fi
  52.  
  53.   if [ -f "$1" ] then zoofile="$1"; else zoofile="$1.zoo"; fi
  54.  
  55.   if [ ! -f "$zoofile" ]
  56.   then
  57.      echo "$0: $zoofile not found"
  58.      return
  59.   fi
  60.  
  61.   shift
  62.  
  63.   tmpfile="pipe:tmp_$CLINUM.$CMDNUM"
  64.  
  65.   if [ -z "$PAGER" ] then PAGER='more'; fi
  66.  
  67.   srun -o "$tmpfile" $(which zoo) -print "$zoofile" $*
  68.   $PAGER "$tmpfile"
  69. }
  70.  
  71.  
  72. #*************************************************************************
  73. # This function insert all files from a 'zoo' archive into the current
  74. # complist.  They also insert the contents of the COMPLIST variable.
  75. #*************************************************************************
  76.  
  77. function _zadd {
  78.    shift 2    # get rid of "Archive blah.zoo"
  79.    complist -a $*
  80. }
  81.  
  82. function zget {
  83.  
  84.    local zoofile zlist
  85.  
  86.    if [ -f "$1" ] then zoofile="$1"; else zoofile="$1.zoo"; fi
  87.  
  88.    if [ ! -f "$zoofile" ]
  89.    then
  90.       echo "$0: $zoofile not found"
  91.       return
  92.    fi
  93.  
  94.    complist -e
  95.  
  96.    zlist=$(zoo lf1 "$zoofile")
  97.    
  98.    _zadd $zlist
  99.    complist -a $COMPLIST
  100. }
  101.  
  102.  
  103. #*************************************************************************
  104. # This function extracts a zoo file in its own sub-directory, then
  105. # deletes the original
  106. #*************************************************************************
  107.  
  108. function zxdir {
  109.    local file dname zooname
  110.  
  111.    for file in $*
  112.    do
  113.       dname=$(extname -v "$file")
  114.       zooname="$dname.zoo"
  115.       if [ ! -d "$dname" ] then mkdir "$dname"; fi
  116.  
  117.       mv "$zooname" "$dname"; cd "$dname"
  118.  
  119.       if zoo -extract "$zooname" >nil:
  120.       then
  121.          rm "$zooname"
  122.       else
  123.          echo "Extract Failed!"
  124.       fi
  125.       cd ..
  126.    done
  127. }
  128.